A Java Database Connectivity (JDBC) Application Programming Interface (API) defines an interface for an application to interact with a database. For example, a user may use the JDBC API to connect to a database and insert data values into a database, locate data values in the database, delete data values from the database and/or retrieve data values from the database.
There are many different database types. Each database type may have a different communication protocol. Accordingly, a JDBC API that provides an interface for one type of database may not be compatible with another type of database.
Each JDBC API may be implemented in a JDBC driver. A database vendor that provides a database may distribute a JDBC driver to the users of the database in order for the users to access the database. As the number of database types continues to increase, the number of JDBC drivers released by database vendors also continues to increase as well.
For a user, this creates the problem of identifying, accessing and installing the correct JDBC driver for each database that the user would like to access. This problem is compounded as additional versions of databases and JDBC drivers are released. In many instances, a user may not have access privileges to install the required JDBC driver needed to access a database. For example, installing a driver may require system administrator access that the user does not have.